pub fn new_birthday_probability(n: u32) -> f64 {
    // 365天，假设所有人的生日都在同一年内，且每个生日独立
    const DAYS_IN_YEAR: u32 = 365;

    // 如果人数大于365，概率为100%，因为不可能所有人生日都不相同
    if n > DAYS_IN_YEAR {
        return 1.0;
    }

    let mut probability = 1.0;

    // 计算没有两个人生日相同的概率
    for i in 0..n {
        probability *= (DAYS_IN_YEAR - i) as f64 / DAYS_IN_YEAR as f64;
    }

    // 生日相同的概率为 1 - 没有生日相同的概率
    1.0 - probability
}